{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "from itertools import cycle\n",
    "\n",
    "from sklearn import svm, datasets\n",
    "from sklearn.metrics import roc_curve, auc\n",
    "from sklearn.model_selection import train_test_split\n",
    "from sklearn.preprocessing import label_binarize\n",
    "from sklearn.multiclass import OneVsRestClassifier\n",
    "from scipy import interp\n",
    "\n",
    "# Import some data to play with\n",
    "iris = datasets.load_iris()\n",
    "X = iris.data\n",
    "y = iris.target\n",
    "\n",
    "# Binarize the output\n",
    "y = label_binarize(y, classes=[0, 1, 2])\n",
    "n_classes = y.shape[1]\n",
    "\n",
    "# Add noisy features to make the problem harder\n",
    "random_state = np.random.RandomState(0)\n",
    "n_samples, n_features = X.shape\n",
    "X = np.c_[X, random_state.randn(n_samples, 40 * n_features)]\n",
    "\n",
    "# shuffle and split training and test sets\n",
    "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=.5,\n",
    "                                                    random_state=0)\n",
    "\n",
    "# Learn to predict each class against the other\n",
    "classifier = OneVsRestClassifier(svm.SVC(kernel='linear', probability=True,\n",
    "                                 random_state=random_state))\n",
    "y_score = classifier.fit(X_train, y_train).decision_function(X_test)\n",
    "\n",
    "# Compute ROC curve and ROC area for each class\n",
    "fpr = dict()\n",
    "tpr = dict()\n",
    "roc_auc = dict()\n",
    "for i in range(n_classes):\n",
    "    fpr[i], tpr[i], _ = roc_curve(y_test[:, i], y_score[:, i])\n",
    "    roc_auc[i] = auc(fpr[i], tpr[i])\n",
    "\n",
    "# Compute micro-average ROC curve and ROC area\n",
    "fpr[\"micro\"], tpr[\"micro\"], _ = roc_curve(y_test.ravel(), y_score.ravel())\n",
    "roc_auc[\"micro\"] = auc(fpr[\"micro\"], tpr[\"micro\"])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f90b936c908>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure()\n",
    "lw = 2\n",
    "plt.plot(fpr[2], tpr[2], color='darkorange',\n",
    "         lw=lw, label='ROC curve (area = %0.2f)' % roc_auc[2])\n",
    "\n",
    "plt.plot(tpr[2], np.repeat(1,len(fpr[2])), color='blue',\n",
    "         lw=lw, label='GINI (value = %0.2f)' % roc_auc[2])\n",
    "\n",
    "plt.plot([0, 1], [0, 1], color='navy', lw=lw, linestyle='--')\n",
    "plt.xlim([-0.05, 1.05])\n",
    "plt.ylim([-0.05, 1.1])\n",
    "plt.xlabel('False Positive Rate')\n",
    "plt.ylabel('True Positive Rate')\n",
    "plt.title('Receiver operating characteristic example')\n",
    "plt.legend(loc=\"lower right\")\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Global TF Kernel (Python 3)",
   "language": "python",
   "name": "global-tf-python-3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.5.2"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
